
package com.shai.wool.discuss.service;

import java.util.List;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.shai.wool.discuss.dao.DiscussDao;
import com.shai.wool.discuss.entity.DiscussVO;
import com.shai.wool.discuss.param.DiscussParam;

/**
 * 评论信息Service实现类
 *
 * @author 朱国军
 * @version 2016年03月23日 朱国军
 */
@Service
public class DiscussService {

    @Autowired
    private DiscussDao discussDao;

    /**
     * 新增，注：返回的添加的条数，获取主键用entity.getId();
     *
     * @param entity 要增加的评论信息对象
     * @return 返回新增的条数
     */
    public Integer insert(DiscussVO entity) {
        return discussDao.insert(entity);
    }

    /**
     * 修改
     *
     * @param entity 要修改的评论信息对象
     * @return 返回修改的条数
     */
    public Integer update(DiscussVO entity) {
        return discussDao.update(entity);
    }

    /**
     * 根据ID获取评论信息实体
     *
     * @param id 主键
     * @return 评论信息信息
     */
    public DiscussVO findById(String id) {
        return discussDao.findById(id);
    }

    /**
     * 按查询条件【分页】查询
     *
     * @param param 评论信息查询条件
     * @return 评论信息列表
     */
    public List<DiscussVO> queryByPage(DiscussParam param) {
        return discussDao.queryByPage(param);
    }

    /**
     * 根据ID删除评论信息
     *
     * @param id 主键
     */
    public Integer delete(String id) {
        return discussDao.delete(id);
    }

    /**
     * FIXME 方法注释信息(此标记由Eclipse自动生成,请填写注释信息删除此标记)
     *
     * @param discussParam
     * @return
     */
    public List<Map<String, Object>> queryMyDiscussByPage(DiscussParam discussParam) {
        return discussDao.queryMyDiscussByPage(discussParam);
    }

    /**
     * 根据条件查询各评分评价的数量
     *
     * @param discussParam 评价条件
     * @return 各评分评价的数量
     */
    public List<Map<String, Object>> queryDiscussScoreCount(DiscussParam discussParam) {
        return discussDao.queryDiscussScoreCount(discussParam);
    }
}
